import random
#"袜子": 10, "鞋子": 20, "拖鞋": 30, "项链": 40
# 以库存数量为权重，随机返回
# 最简单的方法是用列表按产品比列存储产品，[袜子，鞋子，鞋子，。。]， 用列表长度随机，这样将会浪费大量内存空间。

prod_storage_dict = {"袜子": 10, "鞋子": 20, "拖鞋": 30, "项链": 40}

def renturn_prod():
    prod_lst = []
    # 计算权重
    total_quantity = 0
    for quantity in prod_storage_dict.values():
        total_quantity += quantity

    for k, v in prod_storage_dict.items():
        wit = int(v / total_quantity * 10)
        prod_lst.extend([k]*wit)

    return random.choice(prod_lst)

print(renturn_prod())

# 实现的很好，思路很不错，在实际的生产代码中，不要随便使用全局变量，可以试着把全局变量当作参数来传递更好